package com.dtp.core.notify;

import com.dtp.common.entity.TpMainFields;
import com.dtp.common.em.NotifyItemEnum;
import com.dtp.common.entity.NotifyPlatform;

import java.util.List;

/**
 * 动态线程池通知者
 *
 * @author yanhom
 * @since 1.0.0
 *
 * @remark muse
 **/
public interface DtpNotifier {

    /** 获得通知平台名称，参见：NotifyPlatformEnum（钉钉、微信、飞书、电邮、短信） */
    String platform();

    /** 发送变更的消息通知 */
    void sendChangeMsg(NotifyPlatform notifyPlatform, TpMainFields oldFields, List<String> diffs);

    /** 发送警告消息 */
    void sendAlarmMsg(NotifyPlatform notifyPlatform, NotifyItemEnum notifyItemEnum);
}
